home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-07-12 | 66.0 KB | 1,580 lines |
- File MSVIBM.VT 9 June 1993
-
- MS-DOS KERMIT 3.13 TERMINAL EMULATOR TECHNICAL SUMMARY
-
- Most recent update: Tue Jun 15 17:04:57 1993
-
- This file describes the text terminal emulator in the IBM PC version of MS-DOS
- Kermit. See the file MSVIBM.TEK for details about the Tektronix graphics
- emulator. This file is in three main sections:
-
- 1. The VT320/VT102/VT52/Heath-19 Emulator
- 2. The DG DASHER D463 and D470 Emulator
- 3. Compose-Key Sequences
-
-
- 1. VT320/VT102/VT52/Heath-19 EMULATOR IN MS-DOS KERMIT IBM-PC, CODE SUMMARY
-
- VT320/VT102 keypads Heath-19 and VT52 Keypads
- IBM keys IBM Keys
- +------+------+------+------+ +------+------+-------+----------+
- | PF1 | PF2 | PF3 | PF4 | | Blue | Red | Grey | up arrow | - Vendor
- | F1 | F2 | F3 | F4 | | F1 | F2 | F3 | up arrow | - Kermit
- +------+------+------+------+ +------+------+-------+----------+
- | 7 | 8 | 9 | - | | 7 | 8 | 9 |down arrow|
- | F5 | F6 | F7 | F8 | | F5 | F6 | F7 |down arrow|
- +------+------+------+------+ +------+------+-------+----------+
- | 4 | 5 | 6 | , | | 4 | 5 | 6 | rgt arrow|
- | F9 | F10 | SF1 | SF2 | | F9 | F10 | SF1 | rgt arrow|
- +------+------+------+------+ +------+------+-------+----------+
- | 1 | 2 | 3 | E | | 1 | 2 | 3 |left arrow|
- | SF3 | SF4 | SF5 | n S| | SF3 | SF4 | SF5 |left arrow|
- +------+------+------+ t F| +------+------+-------+----------+
- | 0------0 | . | e 6| | 0------0 | . | Enter |
- | SF7 | SF8 | r | | SF7 | SF8 | SF6 |
- +-------------+------+------+ +-------------+-------+----------+
-
- SF1 means push Shift and F1 keys simultaneously
- ---------------------------------------------------------------------------
- Below, the acronyms CSI and SS3 stand for 8-bit control codes in an 8-bit
- environment or for their 7-bit equivalents "ESC [" and "ESC O", respectively.
- Command SET TERMINAL CONTROL {8-BIT | 7-BIT}, and an equivalent command from
- the host, determines the usage for output text; use of parity forces 7-bit
- mode. CSI is decimal 155, SS3 is decimal 143. Similarly, DCS is decimal 144
- or ESC P and ST is decimal 156 or ESC \. APC is decimal 159 or ESC _.
- ---------------------------------------------------------------------------
- Codes sent by DEC and Heath arrow keys
- Key Verb IBM VT320/VT102 mode VT52/H19 mode
- key Cursor Application Cursor or Application
-
- up uparr up CSI A SS3 A ESC A
- down dnarr down CSI B SS3 B ESC B
- right rtarr right CSI C SS3 C ESC C
- left lfarr left CSI D SS3 D ESC D
-
- Codes sent by DEC editing keys, not preassigned to keys.
- Key Verb VT320 mode VT102/VT52/H19 mode
-
- Find decFind CSI 1 ~ these keys
- Insert Here decInsert CSI 2 ~ send nothing
- Remove decRemove CSI 3 ~
- Select decSelect CSI 4 ~
- Prev Screen decPrev CSI 5 ~
- Next Screen decNext CSI 6 ~ ~ is ASCII chart 7/14
-
- Codes sent by DEC Numeric Keypad
- Key Verb IBM ANSI VT320/VT102 mode VT52/H19 mode
- key Numeric Application Numeric Application
-
- PF1/HF7/Blue Gold,pf1 F1 SS3 P SS3 P ESC P ESC P
- PF2/HF8/Red pf2 F2 SS3 Q SS3 Q ESC Q ESC Q
- PF3/HF9/Grey pf3 F3 SS3 R SS3 R ESC R ESC R
- PF4/HF1 pf4 F4 SS3 S SS3 S ESC S ESC S
- 0 kp0 SF7 0 SS3 p 0 ESC ? p
- 1 kp1 SF3 1 SS3 q 1 ESC ? q
- 2 kp2 SF4 2 SS3 r 2 ESC ? r
- 3 kp3 SF5 3 SS3 s 3 ESC ? s
- 4 kp4 F9 4 SS3 t 4 ESC ? t
- 5 kp5 F10 5 SS3 u 5 ESC ? u
- 6 kp6 SF1 6 SS3 v 6 ESC ? v
- 7 kp7 F5 7 SS3 w 7 ESC ? w
- 8 kp8 F6 8 SS3 x 8 ESC ? x
- 9 kp9 F7 9 SS3 y 9 ESC ? y
- comma (,) kpcoma SF2 , SS3 l , ESC ? l
- minus (-) kpminus F8 - SS3 m - ESC ? m
- period (.) kpdot SF8 . SS3 n . ESC ? n
- Enter kpenter SF6 CR or SS3 M CR or ESC ? M
- CR LF (newline on) CR LF
- (SFn means hold down Shift key while pressing Function key n.)
-
- Codes sent by DEC LK201 keyboard function keys, not preassigned to PC keys
- Key name Verb VT320 mode VT102/VT52/H19 mode
-
- Hold Screen nothing nothing
- Print Screen nothing nothing
- Set-Up nothing nothing
- F4 nothing nothing
- F5 (Break) nothing nothing
- F6 decF6 CSI 17 ~ nothing
- F7 decF7 CSI 18 ~ nothing
- F8 decF8 CSI 19 ~ nothing
- F9 decF9 CSI 20 ~ nothing
- F10 decF10 CSI 21 ~ nothing
- F11 (ESC) decF11 CSI 23 ~ ESC
- F12 (BS) decF12 CSI 24 ~ BS
- F13 (LF) decF13 CSI 25 ~ LF
- F14 decF14 CSI 26 ~ nothing
- Help decHelp CSI 28 ~ nothing
- Do decDo CSI 29 ~ nothing
- F17 decF17 CSI 31 ~ nothing
- F18 decF18 CSI 32 ~ nothing
- F19 decF19 CSI 33 ~ nothing
- F20 decF20 CSI 34 ~ nothing
-
- Note: F6 - F20 are DEC "User Definable Keys" which means their output can be
- redefined by the host (not by the terminal owner). See below for method.
-
- An often confusing item is knowing the mode of the auxillary keypad: numeric
- or application. Digital Equipment Corporation designed the terminal to change
- modes only under command from the remote computer and not at all from the
- keyboard. So the startup state is numeric/cursor mode, and reception of
- escape sequences "ESC [ ? 1 h" or "l" changes the mode. Kermit verbs for the
- keypad and cursor keys generate the correct escape sequences appropriate to
- the current mode and terminal type.
-
- A best attempt is made to safely test for the 101/102 key Enhanced keyboard
- and use it if present. If it is present then the keyboard translator
- separates the individual arrow keys from those on the numeric keypad and also
- separates the asterisk and forward slash keys on the keypad from those on the
- regular typewriter keyboard. These special Enhanced keyboard keys are
- reported as scan codes with 4096 added to the base scan code.
-
- OTHER IBM KEYS OPERATIONAL IN CONNECT MODE:
-
- IBM key IBM Verb Action
-
- Keypad Del Send ASCII Del code (rubout) \127
- Backspace (<-) Send ASCII Del code (rubout) \127 (BS is \8)
- Keypad - MODELINE Toggle mode line on/off (only if Mode Line is
- enabled and not used by the host).
- Alt - TERMTYPE Toggle between text and Tek terminal types.
- Alt = RESET Clear screen and reset terminal emulator to
- starting (setup) state.
- Alt b BREAK Send a BREAK signal
- Alt h HELP Show drop down help menu (detailed below)
- Alt s STATUS Show settings
- Alt x EXIT Exit Connect mode, back to Kermit prompt
- Alt n
-
- Home HOMSCN Roll screen up (text down) to beginning of
- storage.
- End ENDSCN Roll screen down (text up) to end of storage.
- PgUp UPSCN Roll screen up (back, earlier) one screen.
- PgDn DNSCN Roll screen down (forward, later) one screen.
- Ctrl-PgUp UPONE Roll screen up one line.
- Ctrl-PdDn DNONE Roll screen down one line.
-
- Control-PrtSc PRTSCN Toggle on/off copying of received text to
- printer, "PRN" shows on far right of mode
- line when activated.
-
- Control-End DUMP Dump image of screen to a disk file or device.
- Default filename is KERMIT.SCN in the current
- directory. Use command SET DUMP to change the
- filename. Screen images are appended to the
- file, separated by formfeeds. Graphics screens
- go to files TEKPLT<digit digit>.TIF.
-
- Shift-PrtSc Standard DOS Print-screen, dump screen image to printer.
-
- unassigned HOLDSCRN DEC style Holdscreen, same as typing Control-S.
-
- ALT-N NEXTSESSION Change to next terminal session, only if using
- Kermit's internal TCP/IP protocol stack.
-
- unassigned NETHOLD Place Network connections "on hold". This means
- interrupt the normal PC to host connection and
- invoke the external network control program
- interface for session management. Works with
- 3Com(BAPI), Novell(NASI), UB-Net1, etc, but not
- with Kermit's internal TCP/IP protocol stack.
-
- unassigned RTONE scroll screen right one column
- unassigned RTPAGE scroll screen right by 20 columns
- unassigned LFONE scroll screen left by one column
- unassigned LFPAGE scroll screen left by 20 columns
-
- "Alt -" means hold down Alt and type minus on the upper key rank. This
- switches among the various kinds of emulation but does not change most
- operating parameters of the emulator. Follow a new selection with ALT = (verb
- RESET) to reset the emulator to the current type.
-
- CONNECT ESCAPE COMMANDS:
-
- Type the Kermit escape character (normally "^]"), then one of the keys below:
- (equivalent \Kverb)
- ? display this short list. HELP
- 0 send a null character. NULL
- A send Telnet "Are You There" sequence
- B send a BREAK signal. BREAK
- C close connect session & return to Kermit prompt. EXIT
- F dump screen to filespec, default is KERMIT.SCN. DUMP
- H hangup the phone or network connection HANGUP
- I send Telnet "Interrupt Process" sequence
- L send a Long BREAK signal LBREAK
- M toggle mode line on/off. MODELINE
- P push to DOS. DOS
- Q quit (suspend) logging. LOGOFF
- R resume logging. LOGON
- S show status. STATUS
- Kermit escape character itself: send it to the host.
-
- RESPONSES TO CHARACTERS RECEIVED BY THE VT/HEATH TERMINAL EMULATOR
-
- Spaces shown between characters of escape sequences are there for ease of
- reading. The actual sequences contain no spaces. Unknown escape sequences
- are absorbed and ignored.
-
- DEC VT320 and VT102 functions while in ANSI (non-VT52) mode, unsupported
- features are marked by an asterisk (*):
-
- Control Codes in C0 (no high bit) Area:
-
- Name ASCII value
- chart hex keyboard operation
- NUL 0/0 00h ^@ Ignored except during transparent printing
- ENQ 0/5 05h ^E Answerback message (response: "MS-DOS KERMIT")
- BEL 0/7 07h ^G Sound DEC style beep
- BS 0/8 08h ^H Backspace, move cursor left one character
- HT 0/9 09h ^I Horizontal tab, move cursor to next tabstop
- LF 0/10 0ah ^J Linefeed, move cursor down one line
- VT 0/11 0bh ^K Vertical Tab, treated as a line feed
- FF 0/12 0ch ^L Formfeed, treated as a line feed
- CR 0/13 0dh ^M Carriage return, move cursor to col 1
- SO/LS1 0/14 0eh ^N Map character set in G1 to GL, locking shift
- SI/LS0 0/15 0fh ^O Map character set in G0 to GL, locking shift
- DC1 1/1 11h ^Q XON flow control, resume communication
- DC3 1/3 13h ^S XOFF flow control, suspend communication
- CAN 1/8 18h ^X Cancel escape & control sequence in progress
- SUB 1/10 1ah ^Z Treated as a CAN
- ESC 1/11 1bh ^[ Escape, start escape seq, cancel any others
- DEL 7/15 7fh ^_ ignored except during transparent printing
-
- All others are ignored.
-
- Control Codes in C1 (high bit set) Area:
-
- These are represented by ESC <code - 40h> in a 7-bit environment. When
- Controls is set to 7-bit output the emulator emits the 7-bit version but still
- responds to reception of both 7- and 8-bit versions. Only the VT220/320
- emulator responds to these 8-bit codes; other text terminal types receive the
- byte without the high bit and the result may be unexpected. Please note that
- Kermit commands SET TERMINAL DISPLAY 8-bit or SET DISPLAY 8-bit are required
- to pass 8-bit codes to the VT320 terminal emulator; otherwise the high bit is
- removed with usually disconcerting results. VMS presumes an 8-bit channel
- with VT300's.
-
- Control codes in C1 (high bit set) Area:
-
- Name ASCII value
- chart 8-bit 7-bit operation
- IND 8/4 84h ESC D Index, move cursor down one line, scrolls
- NEL 8/5 85h ESC E Next line, like CR/LF, scrolls
- HTS 8/8 88h ESC H Set Horizontal Tab at cursor's column
- RI 8/13 8dh ESC M Reverse index, move cursor up one line,scrolls
- SS2 8/14 8eh ESC N Map G2 to GL for next char only, single shift
- SS3 8/15 8fh ESC O Map G3 to GL for next char only, single shift
- DCS 9/0 90h ESC P Device Control String introducer
- SPA 9/6 96h ESC V Start Protected Area (erasure protection)
- EPA 9/7 97h ESC W End Protected Area
- CSI 9/11 9bh ESC [ Control Sequence Introducer
- ST 9/12 9ch ESC \ String Terminator
- OSC 9/13 9dh ESC ] Operating System Command, consume through ST
- PM 9/14 9eh ESC ^ Privacy Message, consume through ST
- APC 9/15 9fh ESC _ Application Program Command, pass host text
- to Kermit as a macro (1024 bytes max) for
- execution and then return to Connect mode.
- Terminated by ST.
- All others are ignored
-
- lease note the actions resulting from reception of OSC, PM, APC (and some CS
- commands): nothing shows on the screen until either:
-
- a) an ST arrives
- or b) another control sequence begins
- or c) the terminal emulator is reset (ALT =, keyboard verb RESET)
-
- Line noise can occassionally generate these characters.
-
- Escape Seq Mnemonic Description of Action
-
- ESC ^L n/a Enter Tektronix sub-mode, clear Tek screen.
- (This is ignored if DISABLE TEK has been given)
- ESC 1 n/a Same as ESC ^L. (ESC 2 exits Tek mode.)
- ESC 1 and ESC 2 are removed from version 3.12
- and later.
- ESC 7 DECSC Save cursor position, attributes, contents of
- char sets used as GL and GR, wrap flag,
- origin mode (DECOM), SS2/SS3 shifts.
- ESC 8 DECRC Restore cursor from previously saved position
- and information listed for DECSC
- ESC # 3 DECDHL Double height and width line, top half
- ESC # 4 DECDHL Double height and width line, bottom half
- ESC # 5 DECSWL Single height and width line
- ESC # 6 DECDWL Double width single height line
- ESC # 8 DECALN Screen alignment test, fill screen with E's
- ESC ( <ident> SCS Designates 94 byte character set <ident> to G0
- ESC ) <ident> SCS Designates 94 byte character set <ident> to G1
- ESC * <ident> SCS Designates 94 byte character set <ident> to G2
- ESC + <ident> SCS Designates 94 byte character set <ident> to G3
- ESC - <ident> SCS Designates 96 byte character set <ident> to G1
- ESC . <ident> SCS Designates 96 byte character set <ident> to G2
- ESC / <ident> SCS Designates 96 byte character set <ident> to G3
- <ident> size character set
- A 94 UK-ASCII (ASCII, sharp sign 2/3 replaced by
- Sterling sign), strictly only when a VT102
- but permitted by Kermit also for VT220/VT320
- A 96 ISO Latin-1 (default in G2, G3)
- B 94 ASCII (default in G0, G1)
- 0 94 DEC Special Graphics (line drawing)
- 1 94/96 Kermit, ALT-ROM
- 2 94 DEC Special Graphics (line drawing)
- %5 94 DEC Supplemental Graphics
- < 94/96 User Preferred Supplemental Set*
- > 94 DEC Technical set (from VT340's)
- H 96 Hebrew-ISO (ISO 8859-8)
- "4 94 Hebrew-7
- * VT300 terminals give choice of ISO Latin-1 (96) or DEC Supplemental
-
- Graphics (94) determined by a Setup menu selection or host command. VT420
- Hebrew terminals add choices of Hebrew-ISO and Hebrew-7. MS-DOS Kermit has
- DEC Supplemental Graphics as the startup UPSS character set.
-
- If the size of the character set does not match the <ident> nothing happens.
- Startup defaults are ASCII in G0 and G1, ISO Latin-1 in G2 and G3, GL points
- to G0, GR points to G2. Activating DEC National Replacement Characters maps
- the NRC set selected by SET TERMINAL CHARACTER-SET <country> into G0..G3.
- Single and Locking shifts, SS2, SS3, LS0 (SI), LS1 (SO), LS1R, LS2, LS2R, LS3,
- LS3R determine which set is mapped to the GLeft or GRight area.
-
- ESC < Exit VT52 mode (to previous ANSI kind/VT320)
- ESC = DECKPAM Enter numeric keypad application mode
- ESC > DECKNPNM Enter numeric keypad numeric mode
- ESC D IND Index, moves cursor down one line, can scroll
- ESC E NEL Move cursor to start of line below, can scroll
- ESC space F S7C1T Disable output of 8-bit controls, use 7-bit
- ESC space G S8C1T Enable output of 8-bit control codes
- ESC H HTS Set one horizontal tab at current position
- ESC M RI Reverse Index, cursor up one line, can scroll
- ESC N SS2 Single Shift 2, map G2 to GL for next char only
- ESC O SS3 Single Shift 3, map G3 to GL for next char only
- ESC P DCS Start Device Control String command (see below)
- ESC V SPA Start protected area (erasure protection)
- ESC W EPA End protected area
- ESC Z DECID Identify terminal. Responses are
- VT320: CSI ? 63; 1; 2; 4; 6; 8; 9; 15 c
- VT102: CSI ? 6 c
- VT100: CSI ? 1 c
- VT52: ESC / Z
- Heath-19: ESC / K
- ESC \ ST String Terminator of Device Control Strings
- ESC ] OSC Operating System Command, ignored through ST
- ESC ^ PM Privacy Message, ignored through ST
- ESC _ APC Applications Program Command, ignored thru ST
- ESC c RIS Reset terminal to initial state, hard reset
- ESC n LS2 Map character set in G2 to GL, locking shift
- ESC o LS3 Map character set in G3 to GL, locking shift
- ESC | LS3R Map character set in G3 to GR, locking shift
- ESC } LS2R Map character set in G2 to GR, locking shift
- ESC ~ LS1R Map character set in G1 to GR, locking shift
- ESC [ CSI Control Sequence Introducer, see list below
-
- Control Seq Mnemonic Description of Action
-
- CSI Pn @ ICH Insert Pn spaces at and after cursor
- CSI Pn A CUU Cursor up Pn lines, does not scroll
- CSI Pn B CUD Cursor down Pn lines, does not scroll
- CSI Pn C CUF Cursor forward, stays on same line
- CSI Pn D CUB Cursor backward, stays on same line
- CSI Pn E CNL Next-line (same as cr/lf), do Pn times
- CSI Pn F CPL Previous-line (reverse index), do Pn times
- CSI Pc G CHA ANSI Cursor to absolute column Pc
- CSI Pr; Pc H CUP Set cursor to row, column (same as HVP)
- CSI Pn I CHI Cursor forward Pn tabstops (Horizontal Index)
- CSI Ps J ED Erase in display:
- 0 = cursor to end of screen, inclusive
- 1 = start of screen to cursor, inclusive
- 2 = entire screen, reset lines to single
- width, cursor does not move.
- CSI ? Ps J DECSED Selective erase in display, Ps as for CSI Ps J
- but preserves protected characters
- CSI Ps K EL Erase in line:
- 0 = cursor to end of line, inclusive
- 1 = start of line to cursor, inclusive
- 2 = entire line, cursor does not move
- CSI ? Ps K DECSEL Selective erase in line, Ps as for CSI Ps K
- but preserves protected characters
- CSI Pn L IL Insert Pn lines preceding current line.
- CSI Pn M DL Delete Pn lines from current downward, incl.
- CSI Pn P DCH Delete Pn chars from cursor to left, incl.
- CSI Pn; Pn R CPR Cursor report (row, column), sent by terminal
- Example: home position yields CSI 1; 1 R
- CSI Pn X ECH Erase Pn chars at and to right of cursor
- CSI Pn a CUF ANSI Cursor forward Pn columns
- CSI Pn c DA Device Attributes request, see reports
- CSI > Pn c DA Secondary Device Attributes req, see reports
- CSI Pr d CVA ANSI Cursor to row Pr, absolute
- CSI Pn e CUD ANSI Cursor down Pn rows
- CSI Pr; Pc f HVP Set cursor to row, column (same as CUP)
- CSI Ps g TBC Tabs clear, Ps: 0 = at this position, 3 = all
- CSI Pn i MC Media Copy, see below
- CSI Pa;...Pa h SM Set ANSI mode, see table below
- CSI Pa;...Pa l SM Reset ANSI mode, see table below
- Pa Mnemonic Mode Set (h) Reset (l)
- 2 KAM *Keyboard locked unlocked
- 3 CRM Control codes act upon debug display
- 4 IRM Insert insert replace
- 10 HEM Horz editing n/a always reset
- 12 SRM Local echo off on
- 20 LNM New Line lf=>cr/lf lf=>lf
-
- CSI ? Ps;...;Ps h SM Set DEC mode, see table below
- CSI ? Ps;...;Ps l RM Reset DEC mode, see table below
- Ps Mnemonic Mode Set (h) Reset (l)
- 0 error (ignored)
- 1 DECCKM cursor keys application cursor/numeric
- 2 DECANM ANSI VT320/VT102 VT52
- 3 DECCOLM Columns +132 col 80 col
- 4 DECSCLM *Scrolling smooth jump
- 5 DECSCNM Screen, whole reverse video normal
- 6 DECOM Origin stay in margins ignore margins
- 7 DECAWM Autowrap on off
- 8 DECARM *Autorepeat on off
- 9 DECINLM *Interlace on off
- 18 DECPFF Printer term Form Feed none
- 19 DECPEX Printer extent screen scrolling region
- 25 DECTCEM Cursor visible invisible
- 34 DECRLM Writing right to left left to right
- 35 DECHEBM +++Invoke macro: KEYBOARDS KEYBOARDR
- 36 DECHEM ++++Hebrew encoding Multinational Hebrew NRC
- 38 n/a Graphics (Tek) ++graphics text
- 42 DECNRCM Nat Repl Char enable disable
- 66 DECNKM Numeric keypad application numeric
- 68 DECKBUM *Typewriter data process typewriter
- + Horizontal scrolling. See comments on EGA boards.
- ++ Ignored if DISABLE TEK has been given.
- +++ VT320 DEC supplements for Hebrew systems adapted
- from VT420-Hebrew terminals, invokes a new
- keyboard map. Kermit invokes macros above.
- ++++ Macros TerminalR/S have been removed in v3.13.
- (SET TERMINAL CHARACTER-SET <country> must be given to employ DEC
- National Replacement Characters. Enabling NRCs replaces G0..G3 chars
- sets with the NRC set and disables 8-bit controls; disabling only
- re-enables 8-bit controls.)
-
- CSI Pn i MC Printer controls (Media Copy)
- Pn
- 0 Print whole Screen
- 4 Exit printer controller (transparent print)
- 5 Enter printer controller (transparent print)
-
- Transparent printing sends all output, except the CSI 4 i termination string,
- to the printer and not the screen, uses an 8-bit channel if no parity so NUL
- and DEL will be seen by the printer and by the termination recognizer code,
- and all translation and character set selections are bypassed.
-
- CSI ? Pn i MC DEC Printer controls (Media Copy)
- Pn
- 1 Print line containing cursor
- 4 Exit autoprint (stop echoing to printer)
- 5 Enter autoprint (echo screen chars to printer)
-
- Autoprint prints a final display line only when the cursor is moved off the
- line by an autowrap or LF, FF, or VT (otherwise do not print the line).
-
- CSI Ps;...Ps m SGR Select graphic rendition
- Ps
- 0 all attributes off (#'s 1, 4, 5, 7)
- 1 bold, intensify foreground
- 4 underscore (reverse video on IBM CGA/EGA)
- 5 blink
- 7 reverse video, per character
- 22 bold off, VT320
- 24 underline off, VT320
- 25 blinking off, VT320
- 27 reverse video off, VT320
- non-DEC extensions: 30-37 = foreground color = 30 + colors
- 40-47 = background color = 40 + colors
- colors: 1 = red, 2 = green, 4 = blue
- VT220 and above only.
- Note: CSI 0 m does NOT affect emulator screen colors.
-
- CSI Ps n DSR Device Status request, see reports
- CSI ? Ps n DECDSR Device Status request, see reports
- CSI ! p DECSTR Soft reset of terminal (keeps screen)
- CSI Pa $ p DECRQM Report ANSI mode settings, see reports
- CSI ? Pd $ p DECRQM Report DEC mode settings, see reports
- CSI Pl; Pc " p DECSCL Set conformance level (set terminal type)
- Pl Pc level selected (also does a soft reset, not hard)
- 61 0 VT102, 7-bit controls (61 is otherwise VT100 level)
- 62 0 or 2 VT320, 8-bit controls (62 is otherwise VT200 level)
- 62 1 VT320, 7-bit controls
- 63 0 or 2 VT320, 8-bit controls (63 is otherwise VT300 level)
- 63 1 VT320, 7-bit controls
-
- CSI Ps;...;Ps q DECLL Load LEDs, Ps = 0 means clear LED #1-4. VT102
- Ps=1,2,3,4 sets LED # 1,2,3,4 on status line.
- CSI Ps " q DECSCA Select Character Protection Attribute
- Ps = 0,2 erasable by DECSED or DECSEL, 1 not erasable by these cmds.
- CSI Pt; Pb r DECSTBM Set top and bottom scrolling margins, resp.
- CSI r resets margin to full screen.
- CSI Ps $ u DECRQTSR Terminal State or Color palette request
- CSI & u DECRQUPSS User Preferred char set request, see reports
- CSI Ps $ w DECRQPSR Presentation State request, see reports
- CSI sol x DECREQTPARM Request terminal parameters, see reports
- CSI 2; Ps y DECST VT102 Confidence test, exits status line
- CSI 4; Ps;...Ps y DECTST VT320 Confidence tests, exits status line
- CSI Pn $ | DECSCPP VT340 Set columns per page (screen width)
- Pn logical width
- 0 or 80 80 columns
- 132 132 columns
- In Kermit Pn values greater than 80 yield 132 columns, else 80 columns.
- This is equivalent to CSI ? 3 h/l (h for 132 columns, l for 80 columns).
-
- CSI Ps $ } DECSASD Select active status display
- Ps = 0 select main display
- Ps = 1 select status line
- Moves cursor to selected display area. This command will be ignored
- unless the status line has been enabled by CSI 2 $ ~. When the status
- line has been selected cursor remains there until the main display is
- reselected by CSI 0 $ }.
-
- CSI Ps $ ~ DECSSDT Select Status Line Type
- Ps meaning
- 0 no status line (empty)
- 1 indicator line (locally owned, Kermit default)
- 2 host-writable line
-
- Other extensions:
- CSI 25; Pc f VT320/VT102/H19 move cursor to 25th line.
- CSI 25; Pc H VT320/VT102/H19 move cursor to 25th line.
- Leave the same way as you went in.
- (These will disable Kermit's own status line.)
- CSI Pn; Pn;..Pn ~ n/a Kermit specific. Invoke Kermit macro PRODUCT
- and pass each parameter as a \%n argument
- to the macro. Intended for product specific
- startup and shutdown and similar operations
- which require exchanges of values. Nine
- parameters are supported. Macro PRODUCT must
- be supplied by the user.
-
- ESC ^L and ESC 1 n/a Enter Tektronix sub-mode, clear Tek screen.
- (This is ignored if DISABLE TEK has been given)
-
- VT320 Report Requests and Responses:
-
- Request CSI c primary device attributes (terminal ident)
- Responses
- CSI ? 63; 1; 2; 4; 6; 8; 9; 15 c VT320 (see below for parameters)
- CSI ? 62; 1; 2; 4; 6; 8; 9; 15 c VT220
- CSI ? 6 c VT102
- CSI ? 1 c VT100
- ESC / Z VT52, submode of VT320/VT102
- ESC / K VT52, when in Heath-19 mode
- Pn meaning
- 1 132 columns
- 2 Printer port
- 3 ReGIS graphics
- 4 Sixel graphics
- 6 Selective erase
- 7 Soft character set (DRCS)
- 8 User-defined keys
- 9 National replacement character sets
- 13 Local editing mode
- 15 Technical character set
- 16 Locator device port
- 18 Windowing capability
- 19 Dual sessions
- 61 Operating level 1 (VT100)
- 62 Operating level 2 (VT200)
- 63 Operating level 3 (VT300 or VT200)
-
- Request CSI > c secondary device attributes
- Response CSI > 24; 0; 0; 0 c VT320, firmware version 0.0 (Kermit)
-
- Request CSI 5 n operating status
- Response CSI 0 n no malfunction
-
- Request CSI 6 n cursor position report
- Request CSI ? 6 n same as CSI 6 n but for VT340s
- Response CSI Pr; Pc R Pr = row, Pc = column. Origin is 1,1
-
- Request CSI ? 15 n printer status
- Response CIS ? 10 n printer ready
- or CSI ? 11 n printer is not ready
-
- Request CSI ? 25 n User Definable Key status
- Response CSI ? 20 n UDKs are unlocked (21 if locked)
-
- Request CSI ? 26 n keyboard dialect
- Response CSI ? 27; Ps n in MS Kermit this is controlled by
- command SET TERMINAL CHARACTER-SET <country>
- Ps Country Ps Country
- 1 North American/ASCII 9 Italian
- 2 British 13 Norwegian/Danish
- 8 Dutch 16 Portugese
- 6 Finnish 15 Spanish
- 14 French 12 Swedish
- 4 French Canadian 11 Swiss (German)
- 7 German 14 Hebrew
-
- Request CSI 1 $ u terminal state (wants entire machine state)
- Response DCS 1 $ ST MS Kermit does not upload this state info.
-
- Request CSI 2; 2 $ u Request VT340 color palette report DECRQTSR
- Response is ESC P 2 $ s <palette 0>/<palette 1>/...<palette 15> ESC \
- where <palette n> is the palette color in the RGB system -
- Pr; Pg; Pb for red, green, and blue percentages, resp.
- black is 0; 0; 0
- bold black is 20; 20; 20
- dim (regular) hue is 40, bold hue is 80.
- NOTE: this report is a very long string and may not be acceptable to
- some communications channels (for example, Telnet). Further, the
- host may request a report in the HLS system; MS-DOS Kermit always
- reports in the RGB system.
-
- Default VT340 color palettes are -
- palette b/w color palette b/w color
- 0 backgnd black black 8 dim grey dim grey (bold black)
- 1 white bold blue 9 grey blue
- 2 white bold red 10 grey red
- 3 white bold green 11 grey green
- 4 white bold magenta 12 grey magenta
- 5 white bold cyan 13 grey cyan
- 6 white bold yellow 14 grey yellow/brown
- 7 foregnd grey grey 15 white white (bold)
-
-
- Request DCS Ps $ p string ST terminal restore state (downloads state info)
- Response none required, ignored by MS Kermit.
-
- Request CSI & u request User Preferred Supplemental Set
- Response DCS Ps ! u string ST
- Ps is 0 for a 94 byte set, or 1 for a 96 byte set
- string is the character set ident string ("A" for ISO Latin-1/96 or
- "%5" for DEC Supplemental Graphics/94)
-
- Request CSI 1 $ w cursor information report
- Response DCS 1 $ u Pr; Pc; Pp; Srend; Satt; Sflag; Pgl; Pgr; Scss; Sdesig ST
- where Pr is cursor row (counted from origin as 1,1)
- Pc is cursor column
- Pp is 1, video page, a constant for VT320s
- Srend = 40h + 8 (rev video on) + 4 (blinking on)
- + 2 (underline on) + 1 (bold on)
- Satt = 40h + 1 (selective erase on)
- Sflag = 40h + 8 (autowrap pending) + 4 (SS3 pending)
- + 2 (SS2 pending) + 1 (Origin mode on)
- Pgl = char set in GL (0 = G0, 1 = G1, 2 = G2, 3 = G3)
- Pgr = char set in GR (same as for Pgl)
- Scss = 40h + 8 (G3 is 96 char) + 4 (G2 is 96 char)
- + 2 (G1 is 96 char) + 1 (G0 is 96 char)
- Sdesig is string of character idents for sets G0...G3, with
- no separators between set idents.
- If NRCs are active the set idents (all 94 byte types) are:
- British A Italian Y
- Dutch 4 Norwegian/Danish ' (hex 60) or E or 6
- Finnish 5 or C Portuguese %6 or g or L
- French R or f Spanish Z
- French Canadian 9 or Q Swedish 7 or H
- German K Swiss =
- Hebrew %=
- (MS Kermit uses any choice when there are multiple)
-
- Request CSI 2 $ w tab stop report
- Response DCS 2 $ u Pc;Pc;...Pc ST
- Pc are column numbers (from 1) where tab stops occur. Note the
- separator "/" occurs in a real VT320 but should have been ";".
-
- Request DSC Ps $ t string ST restore presentation state
- Ps is 1 for cursor information, in form of DCS 1 $ w report above
- 2 for tab stop information, in form of DCS 2 $ w report above
- Response none, commands are executed to restore the indicated information;
- an error may leave the emulator in an inconsistent state.
-
- Request CSI Pa $ p ask state of ANSI mode controls
- Response CSI Pa; Ps $ y
- where Pa is the single ANSI mode below
-
- Pa Mnemonic meaning Ps state
- 2 KAM keyboard action (if locked) 0 unknown mode
- 3 CRM control representation (no debug) 1 set
- 4 IRM insert/replace mode (if insert mode) 2 reset
- 10 HEM horizontal editing (perm reset) 3 permanently set
- 12 SRM send/receive (local echo on) 4 permanently reset
- 20 LNM newline (if newline on)
-
- Request CSI ? Pd $ p state of DEC modes
- Response CSI Pd; Ps $ y
- where Pd is a single DEC state below and Ps is a state value as above
- Pd Mnemonic meaning
- 1 DECCKM cursor key mode (vs application mode)
- 2 DECANM ANSI mode (vs VT52 submode)
- 3 DECCOLM column (if 132 columns)
- 4 DECSCLM if scrolling is smooth (vs jump)
- 5 DECSCNM screen (if video is reversed)
- 6 DECOM origin mode (if on)
- 7 DECAWM autowrap (if on)
- 8 DECSRM autorepeat keyboard (always on in Kermit)
- 18 DECPFF print with Form Feed
- 19 DECPEX print extent
- 25 DECTCEM text cursor enabled
- 42 DECNRCM DEC National Replacement Char set, if in use
- 66 DECNKM numeric keypad (vs applications mode)
- 67 DECBKM if backarrow sends BS or DEL (say DEL)
- 68 DECBUM keyboard usage (say typewriter)
-
- Request DCS $ q string ST control function setting
- Response DCS Ps $ r string ST
- Ps is 0 for valid request, 1 for invalid request
- Request string is one or two characters below saying which control
- function is to be reported:
- $} select active status display
- "q set character attribute
- "p set conformance level
- $~ set status line type
- r set top and bottom margins
- m set graphic rendition
- The reponse string is the same as an incoming command which would
- do that function except the leading CSI is omitted. The host is
- obtaining a text string to be repeated back later with a CSI prefix
- to restore the current state of the selected function. Example:
- request DCS $ q r ST what are top/bottom margin settings?
- response DCS 0 $ r 1; 24 r ST which matches command CSI 1; 24 r
- ^-----^ ^-----^
-
- Request CSI & u what is the User Preferred Supplemental Set
- Response DCS Ps ! u string ST
- where Ps is 0 for 94 byte character set, 1 for 96 byte set,
- string is the letter code for the character set, either
- "A" (96) for ISO Latin-1 or "%5" (94) for DEC Suppl Graphics.
-
- Request DCS Ps ! u string ST assign User Preferred Supplemnental Set
- Ps and string are the same as for the CSI & u request above.
- Response none
-
- Request DCS Pc; Pl | Ky1/St1...Kyn/Stn ST set User Definable Keys
- Pc = 0 clear all UDK definitions before starting, = 1 clear one key.
- Pl = 0 lock the keys, = 1 do not lock; MS Kermit never locks keys.
- Kyn/Stn are key identifier and definition string. Form of Kyn is
- two ASCII digits, 17-34, representing the DEC key number for DEC F6
- through DEC F20; F6 = 17, etc as per keyboard table well above.
- Stn is definition text written as a pair of hex characters per final
- definition byte; upper or lower case A..F are the same. Example:
- DCS 1; Pl | 28/48656c70 ST defines DEC key Help (verb decHelp)
- as the four characters "Help" and does not erase all UDK definitions.
- The lock indicator, Pl, is ignored by MS Kermit. 60 hex chars max.
- Response: none
-
- Request CSI sol x DECREQTPARM Request terminal parameters, VT102 only
- Response CSI sol; par; nbits; xspeed; rspeed; clkmul; flags x
- DECREPTPARM Report of terminal parameters
- sol
- 0 terminal can send unsolicited reports, supported as sol = 1
- 1 terminal reports only on request
- 2 this is a report (DECREPTPARM)
- 3 terminal reporting only on request
- par = 1 none, 2 space, 3 mark, 4 odd, 5 even
- nbits = 1 (8 bits/char), 2 (7 bits/char)
- xspeed, rspeed = transmit and receive speed index:
- 0,8,16,24,32,40,48,56,64,72,80,88,96,104,112,120,128 correspond to speeds of
- 50,75,110,134.5,150,200,300,600,1200,1800,2000,2400,3600,4800,9600,19200,
- and 38400 baud or above.
- clkmul = 1 (clock rate multiplier is 16)
- flags = 0-15 (Setup Block #5), always 0 here
-
- Request DCS Ps; ...Ps { string ST download or clear soft characters
- Response none not supported in MS Kermit VT320 emulator
-
-
- DEC VT52 Mode Functions
-
- Escape sequence Description of action
-
- ESC 7 Save cursor position
- ESC 8 Restore cursor position
- ESC A Cursor up
- ESC B Cursor down
- ESC C Cursor right
- ESC D Cursor left
- ESC F Enter graphics mode
- ESC G Exit graphics mode
- ESC H Cursor home
- ESC I Reverse line feed
- ESC J Erase to end of screen
- ESC K Erase to end of line
- ESC V Print cursor line
- ESC X Exit Printer Controller (transparent print)
- ESC Y row column Direct cursor address, offset from space
- ESC W Enter Printer Controller (transparent print)
- ESC Z Identify (response is ESC / Z)
- ESC ^ (caret) Enter autoprint mode (printer echoes screen)
- ESC _ (underscore) Exit autoprint mode
- ESC ] Print Screen
- ESC = Enter alternate keypad mode
- ESC > Exit alternate keypad mode
- ESC < Enter ANSI mode (changes to VT320 or VT102)
-
- Heath-19 Functions while in Non-ANSI Mode
-
- Escape seq Mnemonic Description of action
-
- ESC A HCUU Cursor Up
- ESC B HCUD Cursor Down
- ESC C HCUF Cursor Forward, stays on same line
- ESC D HCUB Cursor Backward, stays on same line
- ESC E HCD Clear display
- ESC F HEGM Enter Graphics mode
- ESC G HXGM Exit Graphic mode
- ESC H HCUH Cursor Home
- ESC I HRI Reverse Index
- ESC J HEOP Erase to end of page
- ESC K HEOL Erase to end of line
- ESC L HIL Insert line
- ESC M HDL Delete line
- ESC N HDCH Delete character
- ESC O HERM Exit Insert Char mode
- ESC Y row col HDCA Direct cursor addressing, offset from space
- ESC Z HID Identify (response is ESC / K which is a VT52)
- ESC b HBD Erase Beginning of display
- ESC j HSCP Save cursor position
- ESC k HRCP Set cursor to saved position
- ESC l HEL Erase entire line
- ESC n HCPR Cursor Position Report request
- ESC o HEBL Erase beginning of line
- ESC p HERV Enter Reverse Video mode
- ESC q HXRV Exit Reverse Video mode
- ESC r Bn HMBR *Modify baud rate - not supported
- ESC t HEKS *Enter Keypad shifted mode, not supported
- ESC u HXKS *Exit Keypad shifted mode, not supported
- ESC v HEWA Wrap around at end of line
- ESC w HXWA Discard at end of line
- ESC x Ps HSM Set Mode. See table below
- ESC y Ps HRM Reset Mode. See table below
-
- Ps Mnemonic Mode Set (x) Reset (y)
- 1 HSM/HRM 25th line enabled +disabled
- 2 *keyclick off on
- 3 *holdscreen enabled disabled
- 4 cursor type block underline
- 5 cursor on/off on off
- 6 *keypad-shifted shifted unshifted
- 7 alt app keypad enabled disabled
- 8 linefeed lf=>cr/lf lf=>lf
- 9 newline mode cr=>cr/lf cr=>cr
- + disabling the 25th line also clears it
-
- ESC z HRAM Reset to power-up configuration
- ESC = HAKM Enter Alternate Keypad mode
- ESC > HXAM Exit Alternate Keypad mode
- ESC < HEAM Enter ANSI mode (ESC [ stuff)
- ESC @ HEIM Enter Insert Character mode
- ESC [ HEHS *Enter Hold Screen mode, not supported
- ESC \ HXHS *Exit Hold Screen mode, not supported
- ESC { and } HEK, HDK *Keyboard enable/disable, not supported
- ESC ] HX25 *Transmit 25th line, not supported
- ESC # HXMP *Transmit page, not supported
-
- Heath-19 Functions While in ANSI Mode
-
- Escape Seq Mnenonic Description of Action
-
- ESC [ Pn A CUP Cursor up Pn lines
- ESC [ Pn B CUD Cursor down Pn lines
- ESC [ Pn C CUF Cursor forward Pn columns
- ESC [ Pn D CUB Cursor backward Pn columns
- ESC [ Pr; Pc H CUP Cursor to absolute row, column
- ESC [ Ps J ED Erase in Display, see DEC description
- ESC [ Ps K EL Erase in Line, see DEC description
- ESC [ Pn L IL Insert Pn lines at and below current line
- ESC [ Pn M DL Delete Pn lines at and below current line
- ESC [ Pn P DCH Delete Pn chars at and to right of cursor
- ESC [ Pr; Pc f HVP Cursor to absolute row, column
- ESC [ Ps h SM Set mode, see ESC x table above
- ESC [ Ps l RM Reset mode, see ESC y table above
- ESC [ Ps m SGR Set graphics rendition
- Ps operation
- 0 exit reverse video, per character
- 7 enter reverse video, per character
- 10 enter special graphics mode
- 11 exit special graphics mode
- ESC [ 6 n CPR Cursor report request: returns ESC [ Pr; Pc R
- ESC [ p PXMT *Transmit page, not supported
- ESC [ q PX25 *Transmit 25th line, not supported
- ESC [ Ps r PMBR *Modify baud rate, not supported
- ESC [ s PSCP Save cursor position & attributes
- ESC [ u PRCP Restore cursor position & attributes
- ESC [ z PRAM Reset to power-up configuration
- ESC [ ? 2 h PEHM Revert to normal Heath-19 non-ANSI mode
- ESC [ > Ps h SM Same as ESC x Ps
- ESC [ > Ps l RM Same as ESC y Ps
-
- Differences between a real VT320 and the emulator
-
- The emulator is extended by supporting several ANSI class control sequences:
- CSI Pn E CNL Next-Line, Pn times
- CSI Pc G CHA Cursor to column Pc, absolute
- CSI Pn I CHI Cursor forward Pn tab stops
- CSI Pn a CUF Cursor forward Pn columns
- CSI Pr d CVA Cursor to row Pr, absolute
- CSI Pn e CUD Cursor down Pn rows
-
- The cursor can be placed on the status line by direct addressing such as
- CSI Pr; Pc H or CSI Pr; Pc f. Doing so does not invoke VT320 display area
- characteristics found with the formal VT320 method of CSI Ps $ }.
-
- Sixel, soft characters, are not supported in text mode.
-
- Full system report and download, CSI 1 $ u and DCS 1 $ string ST, are
- not supported.
-
- User Definable Keys are not lockable.
-
- The keyboard is not lockable.
-
- Smooth scrolling is not supported.
-
- Double wide and/or double high characters are supported as space fillers
- and/or a repeated line.
-
- The DEC Technical character set occurs on VT340's but not on real VT320's.
-
- Real VT320 terminals operate with 80x24 or 132x24 screen dimensions; the
- emulator supports whatever dimensions the user has constructed outside of
- MS Kermit. However, the logical screen width will be set to 80 or 132 columns
- to match DEC terminals. Also real VT300's have no screen rollback nor
- horizontal scrolling capability.
-
- Character sets:
-
- VT320 Character set storage areas
- G0 G1, G2, and G3
- ------------------------------- --------------------------------
- Any 94 char set Any 94 or 96 char set
- ASCII ("B"/94) default G1 default is ASCII ("B"/94),
- G2 and G3 defaults are
- ISO Latin-1 ("A"/96)
- Special Graphics ("0"/94, "2"/94)
- Alt-Rom ("1"/94) (MS-DOS Kermit only)
- Supplementary Graphics ("%5"/94)
- Technical (">"/94) (from VT340)
- User Preferred, UPSS, if Suppl Gr. UPSS if ISO Latin-1 or Suppl Gr.
- DEC-Hebrew or Hebrew-ISO
-
- National Replacement Characters are forced into all sets when activated
- by CSI ? 42 h but only if a <country> has been previously selected by
- SET TERMINAL CHARACTER-SET <country>
-
- VT102 Character set storage areas
- G0 and G1 G2 and G3
- -------------------------------- ----------------------------------
- ASCII ("B"/94) Default ASCII ("B"/94) Default
- Special Graphics ("0"/94, "2"/94)
- Alt-Rom ("1"/94) (MS Kermit only)
- Supplementary Graphics ("%5"/94)
- Technical (">"/94) (from VT340)
- National Replacement Characters Always ASCII ("B"/94)
- are selected and activated by
- SET TERMINAL CHARACTER-SET <country>
- and affect only G0 and G1.
-
- [Note: there are several variations of DEC VT10x; the emulator comes closest
- to the VT102 as rendered in the DEC Rainbow computer. A real VT320 in VT100
- mode removes access to G2 and G3; the VT102 has G2 and G3 holding ASCII.]
-
- VT52 is used as a submode of a VT320 (default) or a VT102. Only GL = G0 with
- ASCII is available. ESC F loads line drawing graphics, ESC G reloads ASCII.
-
- Heath-19. Same as for VT52 in non-ANSI mode, but while in ANSI mode ESC [ 10 m
- and ESC [ 11 m duplicate the ESC F and ESC G operations.
-
-
- 2. DATA GENERAL DASHER D463 AND D470 TERMINALS, NATIVE MODE
-
- Items marked with a * are not implemented in MS-DOS Kermit. XON/XOFF flow
- control should be set to outgoing only or none because these codes are
- also used as D463/D470 commands.
-
- Special D463/D470 Kermit command:
-
- SET TERMINAL COMPRESSED-TEXT {GRAPHICS, TEXT-132}
-
- The default is GRAPHICS, meaning compressed font characters are drawn as 5x14
- dot pattern cells in IBM PC graphics mode, simulating a text screen. The
- compressed font used in Graphics mode is Code Page CP437 or CP850.
- Alternatively, TEXT-132 means switch to 132 column EGA/VGA text mode and show
- all text with that font. Graphics is considerably slower than Text and only
- 128 character cells are available across the screen (640 dots / 128 yields 5
- dots per character cell including a separation dot). If Text is commanded and
- the display adapter cannot be switched to 132 column mode then Graphics is
- implemented by default. Compressed fonts are available only on EGA/VGA
- adapters and above, not on Monochrome, CGA, or Hercules.
-
- Note on line drawing, RS L and the RS G series of commands. The drawing
- remains intact so long as the graphics screen is viewed. It is not preserved
- if the user returns to the Kermit prompt or switches to the text screen (the
- ALT - hot key, keyboard verb \ktermtype). The reason is the basic screen is
- first drawn from the text screen and then line drawing dots are superimposed.
- Leaving this screen means the text screen could change and thus a fresh
- version of it will always overwrite the existing material. It is not possible
- to preserve the line drawings separately from the underlying simulated text
- screen. The Data General CEO_DRAW program provides a REFRESH command to
- restore graphics images.
-
- A Data General D463 terminal is a monochrome high resolution text and graphics
- terminal, a D470 is a similar full color terminal. The D470 has fewer screen
- dots than the D463 and uses a smaller graphics crosshair. A D463 graphics
- screen is 800 dots across by 576 high, a D470 graphic screen is 640 across by
- 480 high with 16 colors. Aside from a few status reports and the graphics
- details both terminals use the same core emulator. ANSI mode is not supported
- on either terminal; please use Kermit's VT320 instead.
-
- When the display adapter is in graphics mode character fonts are
- sought from the display adapter and, when Code Pages are active, from the
- DOS Code Page file EGA.SYS. Normal width characters can be drawn from that
- file, but compressed characters will be shown from a CP850 font if the
- current Code Page is other than CP437. The DOS file EGA.SYS must be in
- the current directory on along the PATH. CGA, monochrome, and Hercules
- video display adapters cannot use Code Pages; only EGA/VGA and above can.
-
- A D463 terminal is a 7-bit device and Kermit removes the high bit of a byte
- before passing it to the emulator. A D470, however, can use the high bit and
- the Kermit command SET DISPLAY {7, 8} is effective for its emulation.
-
- Special codes sent by DG keyboard function keys, not preassigned to PC keys
-
- DG Key name Kermit Verb D463/D470 Data General native mode
- prefix second character
- F1..F15 dgF1..dgF15 RS q,r,s,t,u, v,w,x,y,z, {,|,},~,p
- shift F1..F15 none RS a,b,c,d,e, f,g,h,i,j, k,l,m,n,`
- control F1..F15 none RS 1,2,3,4,5, 6,7,8,9,:, ;,<,=,>,0
- ctrl-shft F1..F15 none RS !,",#,$,%, &,',(,),*, +,comma,-,.,
- <space>
- C1..C4 dgC1..dgC4 RS \,],^,_
- shift C1..C4 none RS X,Y,Z,[
- Uparrow uparr Control-W
- Rightarrow rtarr Control-X
- Leftarrow lfarr Control-Y
- Downarrow dnarr Control-Z
- Home none Control-H
- shift Uparrow none RS Control-W
- shift Rightarrow none RS Control-X
- shift Leftarrow none RS Control-Y
- shift Downarrow none RS Control-Z
- shift Home none RS Control-H
- Erase EOL none Control-K
- Erase Page none Control-L
- Cmd-Print none RS Control-U
- shift Cmd-Print none RS Control-A
- POINT dgPoint Full graphics cursor position report
- SPCL dgSPCL none, used as prefix for compounds
- NC dgNC none, toggles screen between Normal and
- Compress fonts, same as if the host sent
- RS F J or RS F K.
-
- Mouse support: While in graphics mode a Microsoft-compatible mouse may be used
- to control the graphics crosshair. The left mouse button sends the POINT
- command, and the right button sends the dgF1 keyboard verb. The DG F1 key
- frequently means "execute" to many utilities. On Data General keyboards POINT
- is the key combination CMD CURSOR-TYPE.
-
- Compound keys: See section at the end of this document.
-
-
- RECEIVED CODES AND ACTIONS
-
- Note: <n> is the lower four bits of a byte, <nn> is the lower four bits of
- two consequetive bytes as high then low order portions of an 8-bit result.
- Such input bytes may have anything in the upper four bits.
-
- Control Seq Hex Description of Action
- Control-@ 00h Used as data within a command
- Control-A 01h Print form. Only bold characters in current
- window at cursor row and below, followed by
- sending a Control-F character to the host.
- Control-B 02h Reverse video off
- Control-C 03h Blink enable, affects only new chars in Kermit
- Control-D 04h Blink disable, affects only new chars
- Control-E 05h Read window address
- Report is Control-_<col><row> in binary
- Control-G 07h Bell
- Control-H 08h Window home, go upper left corner of window
- Control-I 09h Tab horizontally
- Control-J 0Ah Newline, can scroll window if Roll Mode is on,
- else cursor wraps to upper left corner (Home).
- Landing on a protected character yields a
- cursor right operation.
- Control-K 0Bh Erase cursor to end of line (stops on first
- protected mode character)
- Control-L 0Ch Erase window, cursor to window home
- Control-M 0Dh Carriage return. Go to left margin. If that
- character is protected then a cursor right
- is performed.
- Control-N 0Eh Blink on
- Control-O 0Fh Blink off
- Control-P <col><row> 10h Write window address, 255 is do not change.
- Addresses are in unencoded binary.
- Control-Q 11h Print window. All characters in current
- window at cursor row and below, followed by
- sending a Control-F character to the host.
- Control-R 12h Roll Mode enable (default)
- Control-S 13h Roll Mode disable
- Control-T 14h Underscore on
- Control-U 15h Underscore off
- Control-V 16h Reverse video on
- Control-W 17h Cursor up. Wraps top to bottom in the window.
- Landing on a protected character yields a
- cursor left operation.
- Control-X 18h Cursor right. End of line wrap executes New
- Line. Landing on a protected character repeats
- the cursor right command (stops at start).
- Control-Y 19h Cursor left. Start of line wrap executes a
- cursor up at right margin. Repeats if a
- protected mode character is encountered, and
- stops at starting point if looping.
- Control-Z 1Ah Cursor down, one line, same column. Wraps
- in window bottom to top, landing on a
- protected character yields a cursor right.
- Control-[ 1Bh Escape char
- Control-\ 1Ch Dim on
- Control-] 1Dh Dim off
- Control-^ 1Eh DG escape char (ASCII name RS)
- Control-_ 1Fh Used as data within a command
-
-
- DG Escape Seq Description of Action
-
- RS A <n> Set foreground color (D470). A D463 uses this
- only for polygon fill. Kermit uses D470 style.
- <n> is a color code whose 4 lower bits mean:
- 0 = black, 1..8 = bold blue, green, cyan, red,
- magenta, yellow, white, respectively, and
- 9 = dark grey, 10..16 = dim versions of above.
- RS B <n> Set background color (D470). As above
- RS C Read model id
- Report is RS o # <m><x><y>
- <m> is ASCII 6 (D463/D413)
- or 44 decimal (D470)
- <x> is 010CP000 binary byte
- C = 0 if 7 bit, = 1 if 8 bit comms
- P = 0 if not, = 1 if printer is available
- <y> is 0101LLLL binary byte
- LLLL is keyboard nationality
- 0010 Norwegian
- 0011 Swiss/French (French in Kermit)
- 0100 Swiss/German (Swiss in Kermit)
- 1010 French-Canadian
- 0110 Katakana (not implemented in Kermit)
- 1000 French-Canadian
- 1001 US English
- 1010 United Kingdom
- 1011 French
- 1100 German
- 1101 Swedish/Finnish
- 1110 Spanish
- 1111 Danish/Norwegian
-
- RS D Reverse video on
- RS E Reverse video off
- RS H Scroll up
- RS I Scroll down
- RS J Insert character
- RS K Delete character
-
- RS F 7 <nn> *Select printer NRC
- RS F 8 *Display char generator contents, diagnostics
- RS F 9 Fill screen with grid, diagnostics
- RS F ? 0 Simulprint off (print and display together)
- RS F ? 1 Simulprint on (print and display together)
- RS F ? 2 Print pass through off (transparent printing)
- RS F ? 3 Print pass through on (transparent printing)
- RS F ? 5 *Window bit dump
- RS F ? 6 *Form bit dump
- RS F ? 7 VT style autoprint off (whole line printing)
- RS F ? 8 VT style autoprint on (whole line printing)
- RS F ? : Print Screen. All characters on the screen,
- followed by sending a Control-F character
- to the host.
- RS F ; <command> *Data trap mode, debugging (use SET DEBUG ON)
- RS F < *Perform UART loopback, diagnostics
- RS F > <char> Fill screen with character, diagnostics
- RS F A Reset the terminal emulator
- RS F B <nn><n>..<nn><n> Set Windows (each is full width of screen
- and each scrolls h/v independently)
- <nn> number of lines in window (24 == full screen)
- <n>=0/1 normal/compressed (compress=graphics fake-text
- or 132 columns, user selectable, in Kermit)
- Command ends on 24 lines or on <00><n>.
- Screen is auto centered. Cursor to screen home.
- RS F C <nn> Scroll left <nn> columns (if Horiz scroll is
- enabled)
- RS F D <nn> Scroll right <nn> columns (ditto)
- RS F E Erase screen, cursor to screen home, window
- settings are preserved.
- RS F F Erase unprotected characters from the cursor
- position to the end of the window.
- RS F G Screen home, go to upper left corner of screen.
- Landing on a protected character yields a
- cursor right operation.
- RS F H Insert line, text moves down in window
- RS F I Delete line, text moves up in window. If the
- cursor is on a protected character a cursor
- right command is executed.
- RS F J Select normal spacing (80 column mode)
- RS F K Select compressed spacing (132 column mode)
- RS F L Protect on, applies to chars until Protect off,
- provided Protect is Enabled.
- RS F M Protect off
- RS F N <nnn><n><n> Change attributes in current window
- <nnn> number of chars to change, starting at cursor
- <n> attributes to set
- bit 3 dim
- bit 2 reverse video
- bit 1 underscore
- bit 0 blink
- <n> attributes to reset, as above
- Both set and reset means toggle.
- RS F O Read horizontal scroll offset
- Report is RS o : <nn> where <nn> is window
- horizontal scroll value (columns)
- RS F P <nn><nn> Write screen attributes
- <nn> absolute screen column for cursor
- <nn> absolute screen row for cursor
- RS F Q <n> Set cursor type
- <n> cursor type
- 0 disable/hide, and save current
- 1 blinking
- 2 reverse video block (PC cursors always blink)
- 3 blinking reverse video block
- 4 underscore
- 5 display cursor with saved attributes
- RS F R <char><dd>..<dd> *Define character, 12 or 10 <dd> items,
- 10x12 cell for D463, 8x10 for D470.
- RS F S <nn> Select Character Set
- <nn> character set
- 00 keyboard language
- 01 US ASCII
- 02 UK ASCII (sharp sign # relaced by Pound Sterling)
- 03 NRC French
- 04 NRC German
- 05 NRC Swedish/Finnish
- 06 NRC Spanish
- 07 NRC Danish/Norwegian
- 08 NRC Swiss
- 09 NRC Kata Kana (G0) not supported in Kermit
- 0E DG International
- 0F Kata Kana (G1) not supported in Kermit
- 11 Line Drawing
- 13 DG Special Graphics (CP437 GR)
- 14 DEC Multinational
- 15 DEC Special Graphics (line drawing)
- 1D Low PC Term (CP437 GL)
- 1E High PC Term (CP437 GR)
- 1F Latin1 (ISO 8859-1)
- 20 et seq soft fonts not supported in Kermit
-
- RS F T <n> *Set scroll rate
- <n>
- 0 disable smooth scroll
- 1 enable smooth scroll at 5 rows/sec
- 2 enable smooth scroll at 10 rows/sec
- RS F U <n> Select 7/8 bit operation
- <n>, 0 = 7-bits, 1 = 8-bits in and out
- RS F V Protect enable, permit protect on/off to work
- RS F W Protect disable
- RS F X <nn><nn> Set margins
- <nn>, first is left margin, second is right margin
- both in the range of 0 to 206, inclusive. Screen
- may be scrolled to make both margins visible (left
- margin dominates). Cursor moves to left margin.
- RS F Y <nn><nn><nn> Set alternate margins, relative to current
- <nn> row to place cursor on, 0..24, wrt window top.
- <nn> column of new left margin, wrt permanent left.
- <nn> column of new right margin, wrt new left.
- 255 value means do not change
- Disables horizontal scrolling
- RS F Z Restore normal margins, removes alt margins,
- reenables horizontal scrolling
- RS F ] Horizontal scroll disable
- RS F \ Delete line between margins (push up)
- RS F [ Insert line between margins (push up)
- RS F ^ Horizontal scroll enable (default)
- RS F _ <nn><nn> Show columns (align window l/r to show text)
- <nn> left most col to display, 0..206
- <nn> right most col to display, 0..206
- Screen may be scrolled to make both margins visible
- (left margin dominates).
-
- RS F ` Print Pass Through on (not transparent print)
- RS F a Print Pass Through off
- RS F b Read screen address (cursor position)
- Report is RS o 8 <nn><nn> for col,row
- RS F c <n><n><n><n> *Set color map, D470. Use Kermit command
- Set Terminal Color.
- RS F d Read characters remining
- Report is RS o 9 <high><low> (binary)
- Always zero remaining in Kermit
- RS F e <n><n> Reserve character (no action in Kermit, none
- is needed.)
- RS F f <n> Set keyboard language
- <n>
- 0 set language to default (National)
- 1 set language to GL=ASCII, GR=DG International
- 2 set language to GL=ASCII, GR=Latin1 ISO 8859.1
-
- RS F h *Push
- RS F i *Pop
- RS F k <mode><key><length><string> *Host programmable function keys
- RS F m 0 *Read cursor contents, diagnostics
- RS F m 4 *Character loopback, diagnostics
- RS F m 5 *Hot key switch, dual emulation
- RS F m 6 *Read bit contents, diagnostics
- RS F r <n><pos><time> *Set clock time
- RS F q <nn><nn> *Deallocate character sets
- RS F s <n> *Save/restore screen contents
- <n> 0=save, 1=restore
- RS F t Report screen size
- Reports RS o <nn><nn><nn><nn><status>
- rows, columns(207), rows in window, columns in
- window (right-left margins+1), status=70h
- RS F v <r1><c1><r2><c2> Read window contents
- Reports chars in window from row1, col1
- to row2, col2, without attributes
- RS F w Read new model id
- Reports RS o w <class><service><rev><name><reserved>
- <class> is 8 D460/D470 level
- <service> is 01
- <revision> is 00 firmware rev (Kermit = 0)
- <name> is "D463 " (8 bytes)
- or "D470 " (for the D470 emulator)
- <reserved> is " " (4 bytes)
-
- RS F x <n> Printer pass back to host
- Reports RS R x 0 (mode cannot be set, Kermit)
- RS F z <n> Set 25th line mode
- <n>
- 0 display status line
- 1 put msg on line, msg is <nn>text
- following this cmd
- 2 *use as extra screen row
- 3 blanked
- RS F { <nn><n> Set model id <nn> and graphics ability <n>
- RS F } <n><n> Named save/restore cursor
- <n> sets memory number, 0..15, for save
- <n> 0=save to memory, 1=restore from memory
- Saves/restores cursor location and shape.
- RS F ~ <nn> *Switch emulation mode, dual emulation
-
- RS G 0 <nnn><nnn><nnn><nnn><nnn> Arc (center x, center y, radius, start
- angle, stop angle). Angle is deg CCW from
- +x axis. <nnn> are "location arguments."
- Manual is in error on this item. DG screen
- coordinates of 0..799 (x), 0..574 (y) D463
- or 0..639 (x), 0..479 (y) D470.
- RS G 1 <nnn><nnn><nnn><nnn><n> Bar. Arguments are lower left x,y corner
- width, height, and <n> for foreground (1)
- or background (0) filling color.
- RS G 8 <loc_list><null> Line drawing <loc_list> is list of x,y pairs
- using "location arguments".
- RS G @ Cursor attributes. Report is
- RS o , <crosshair> 0 <crosssize> <tracked>
- where <crosshair> is 0 or 1 for off/on,
- <crosssize> is 1 for D463 and 0 for D470,
- <tracked> is 0, 2, 4 or 6 for tracked devices
- of none, keyboard, mouse, both, respectively.
- RS G A Graphics cursor reset (no cursor, no tracking)
- RS G B Graphics cursor on
- RS G C Graphics cursor off
- RS G H <n> Graphics cursor track
- <n> bit field, 0 for nothing
- 2 for keyboard arrow keys,
- 4 for mouse, default nothing
- RS G I <n> *D470, set graphics crosshair (cursor) color.
- Not implemented because Kermit uses XOR with
- existing screen dots.
- RS G : <loc><null> Polygon fill (non-intersecting polygon)
- <loc> is up to 255 x,y pairs of sequential
- vertices, in location argument format.
- RS G p 1 <offset><pat><null> Set pattern for line drawings. Kermit supports
- only a 16 bit pattern, and no offset editing.
- RS G ? | Read cursor location. Reports
- RS o | <space><xxxxx><space><yyyyy><CR>
- D463 Manual is in error and says RS O | etc.
- RS G > | <nnn><nnn> Set cursor location, graphics crosshair.
-
- RS H Scroll up (in window). Window text moves up
- one line, blank line is inserted at bottom.
- Cursor remains fixed on screen unless it is
- on a protected character, then a cursor right
- is executed.
- RS I Scroll down (in window). Window text moves
- down one line, blank line is inserted at top,
- cursor remains fixed on the screen.
- RS J Insert character. Insert a space at the curror,
- push right, lose excess. First protected
- character is temporary right margin.
- RS K Delete character at cursor position, pull
- left. First protected character is temporary
- right margin.
-
- RS L <loc_list><null> Line drawing. Same as RS G 8 above.
-
- RS N Shift out (GLeft pointed to G1)
-
- RS O Shift in (GLeft pointed to G0, default)
-
- RS P @ <n> *Unix mode
- <n>, 0 = enter, 1 = exit Unix mode
- RS R @ <nn> *Set row length
- RS R A 0 <nn><n> *Set split screen mode, dual emulation
- RS R A 1 <nn> *Set first row to display, dual emulation
- RS R B <type><ff><cs><graph> *Set Device Options
- RS R C <ss><rr> *Field attributes
- <ss>=<nn> set, <rr>=<nn> reset
- bit 4 blank (invisible)
- bit 3 dim
- bit 2 reverse video
- bit 1 underscore
- bit 0 blink
- toggle if both set and reset
- RS R D <ss><rr> *Page Attributes
- <ss>=<nn> set, <rr>=<nn> reset
- bit 3 dim
- bit 2 reverse video
- bit 1 underscore
- bit 0 blink
- toggle if both set and reset
- RS R E <n> Double high/wide characters (as char blank)
- <n>
- 0 normal row
- 1 double wide
- 2 double high top
- 3 double high bottom
- 4 double high top/double wide
- 5 double high bottom/double wide
-
-
- 3. COMPOSE-KEY SEQUENCES
-
- Compose-key sequences are available for entering special characters during all
- types of terminal emulation, as long as Kermit's TERMINAL CHARACTER-SET is
- LATIN1, or (for DG terminal emulation) DG-INTERNATIONAL, or (for DEC terminal
- emulation) DEC-MCS.
-
- Keyboard verb \Kcompose or \KdgSPCL (synonyms) must be assigned to a key.
- Press this key and then two more as illustrated in the following table
- Hexadecimal output codes are shown below for each case; "n/a" means no output
- is produced.
-
- Case and order insensitive:
- Input pair DG Int Latin1 Graphic
- ++ 23h n/a #
- AA 40h n/a @
- (( 5Bh n/a [
- // or /< 5Ch n/a \
- )) 5Dh n/a ]
- ^<space> 7Eh n/a ^
- (- 7Bh n/a {
- /^ 7Ch n/a |
- )- 7Dh n/a }
- << B1h ABh << (Left guillemot)
- 0^ or *<space> BCh B0h Degree, ring above
- +- B6h B1h +-
- >> B0h BBh >> (Right guillemot)
- SS FCh DFh German double s (Ess-Zet)
- /U A3h B5h Greek mu
- 2^ A4h B2h 2 superscript
- 3^ A5h B3h 3 superscript
- C/ or C| A7h A2h Cent sign
- L- or L= A8h A3h Pound Sterling (L== is not supported)
- Y- or Y= B5h A5h Yen sign
- SO or S! or S0 BBh A7h Paragraph sign
- XO or X0 A6h A5h Currency sign
- A- A9h A4h Feminine ordinal
- CO or C0 ADh A9h Copyright sign
- PP or P! B2h B6h Pilcrow sign
- .^ B9h B7h Middle dot
- O- AAh BAh Masculine ordinal
- 12 A2h BDh Fraction one-half
- !! ABh A1h Inverted exclamation
- ?? ACh BFh Inverted query mark
- T- AFh n/a Not equals sign
- TM B3h AEh Trademark sign
- FF B4h n/a Florin sign (DGI only)
- <= B7h n/a Less than or equals sign (DGI only)
- >= B8h n/a Greater than or equals sign (DGI only)
- ,- A1h ACh Not sign
- "" BDh A8h Diaeresis
- '' BEh B4h Accent acute
- RO AEh AEh Registered sign
- || n/a A6h Vertical broken bar
- -- n/a ADh Soft hyphen
- -^ n/a AFh Macron
- ,, n/a B8h Cedilla
- 34 n/a BEh Fraction three-fourths
- XX n/a D7h Multiplication sign
- -: n/a F7h Division sign
- 1^ n/a B9h Superscript 1
- 14 n/a BCh Fraction one-fourth
-
- Case and order sensitive:
- Input pair DG Int Latin1 Graphic
- EO D7h n/a OE digraph
- AE C6h C6h AE digraph
- ae E6h E6h ae digraph
- ,C C7h C7h Cedilla
- ,c E7h E7h cedilla
- /O D6h D8h O oblique stroke
- /o F6h F8h o oblique stroke
- HT n/a DEh Icelandic Thorn
- ht n/a FEh Icelandic thorn
- -D n/a D0h Icelandic Eth
- -d n/a F0h Icelandic eth
-
- Case sensitive, order insensitive:
- Input pair DG Int Latin1 Graphic
- 'A C0h C1h A-acute
- 'a E0h E1h a-acute
- `A C1h C0h A-grave
- `a E1h E0h a-grave
- ^A C2h C2h A-circumflex
- ^a E2h E2h a-circumflex
- "A C3h C4h A-diaeresis
- "a E3h E4h a-diaeresis
- ~A C4h C3h A-tilde
- ~a E4h E3h a-tilde
- *A C5h C5h A-ring
- *a E5h E5h a-ring
- 'E C8h C9h E-acute
- 'e E8h E9h e-acute
- `E C9h C8h E-grave
- `e E9h E8h e-grave
- ^E CAh CAh E-circumflex
- ^e EAh EAh e-circumflex
- "E CBh CBh E-diaeresis
- "e EBh EBh e-diaeresis
- 'I CCh CDh I-acute
- 'i ECh EDh i-acute
- `I CDh CCh I-grave
- `i EDh ECh i-grave
- ^I CEh CEh I-circumflex
- ^i EEh EEh i-circumflex
- "I CFh CFh I-diaeresis
- "i EFh EFh i-diaeresis
- ~N D0h D1h N-tilde
- ~n F0h F1h n-tilde
- 'O D1h D3h O-acute
- 'o F1h F3h o-acute
- `O D2h D2h O-grave
- `o F2h F2h o-grave
- ^O D3h D4h O-circumflex
- ^o F3h F4h o-circumflex
- "O D4h D6h O-diaeresis
- "o F4h F6h o-diaeresis
- ~O D5h D5h O-tilde
- ~o F5h F5h o-tilde
- 'U D8h DAh U-acute
- 'u F8h FAh u-acute
- `U D9h D9h U-grave
- `u F9h F9h u-grave
- ^U DAh D8h U-circumflex
- ^u FAh F8h u-circumflex
- "U DBh DCh U-diaeresis
- "u FBh FCh u-diaeresis
- "Y DDh n/a Y-diaeresis
- "y FDh FFh y-diaeresis
- 'Y n/a DDh Y-acute
- 'y n/a FDh y-acute
-
-
- (End of File MSVIBM.VT)
-